package online.dgyj.tts;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.speech.tts.TextToSpeech;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;

public class MainActivity extends AppCompatActivity{

    private TextToSpeech textToSpeech;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        // 初始化 TextToSpeech
        textToSpeech = new TextToSpeech(getApplicationContext(), new TextToSpeech.OnInitListener() {
            @Override
            public void onInit(int status) {
                // 在初始化完成时处理一些逻辑，这里先留空
            }
        });

        // 获取布局中的 EditText 和 Button
        EditText editTextText = findViewById(R.id.editTextText);
        Button button = findViewById(R.id.button);

        // 设置 Button 点击事件
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                // 当 Button 被点击时，获取 EditText 中的文本并转换成语音播放
                textToSpeech.speak(editTextText.getText().toString(), TextToSpeech.QUEUE_ADD, null, null);
            }
        });
    }

    // 当 Activity 停止时执行
    @Override
    protected void onStop() {
        super.onStop();
        // 停止正在播放的语音
        textToSpeech.stop();
        // 关闭 TextToSpeech 引擎，释放资源
        textToSpeech.shutdown();
    }
}
